
/******************************************************************************
 * Define common types
 *
 * Description:
 *
 * Different microprocessors and compilers use different length
 * intrinsic values. The values defined here are universal.
 * 
 * Author:
 *  Tom Bullinger 			(09/07/2011)	Initial creation
 *  Philip Rodriguez,
 *  Sajin George,
 *  Oliver Wing,
 *  Alfred Lee				(11/08/2011)	Updated for project 6
 *
 *****************************************************************************/
 
#ifndef __TYPES_H
#define __TYPES_H

// Signed 8-bit Type
#ifndef INT8
typedef signed char         INT8;
#endif

// Signed 16-bit Type
#ifndef INT16
typedef signed int          INT16;
#endif

// Signed 32-bit Type
#ifndef INT32
typedef signed long int     INT32;
#endif

// Unsigned 8-bit Type
#ifndef UINT8
typedef unsigned char       UINT8;
#endif

// Unsigned 16-bit Type
#ifndef UINT16
typedef unsigned int        UINT16;
#endif

// Unsigned 32-bit Type
#ifndef UINT32
typedef unsigned long int   UINT32;
#endif

#ifndef TRUE
#define TRUE	1
#endif

#ifndef FALSE
#define FALSE	0
#endif

//Macro Definitions

//POST
# define PostFail 0
# define PostPass 1

//servo positions

# define Pos0 0
# define Pos1 1
# define Pos2 2
# define Pos3 3
# define Pos4 4
# define Pos5 5
# define MaxPos 5

//duty cycle values for each servo position

# define Pos0DutyCycleValue 8
# define Pos1DutyCycleValue 14
# define Pos2DutyCycleValue 18
# define Pos3DutyCycleValue 24
# define Pos4DutyCycleValue 30
# define Pos5DutyCycleValue 37

//Period register value

# define PeriodRegisterValue 200

//servo information to be stored to keep track of each servo

# define Servo1 		1
# define Servo2 		2


//SET /RESET
# define Set         1
# define Reset       0


#endif //__TYPES_H